The present invention relates to a detector for signals sent in Code Division Multiple Access mode and, more particularly, to a method and apparatus for detecting messages from a plurality of asynchronous direct-sequence CDMA signals by decorrelation.
There is an increasing prevalence of centralized multi-user radio communication systems, such as cellular telephone systems, that use Code Division Multiple Access (CDMA) signal coding methods, in general, and direct-sequence CDMA, in particular. The latter method can be briefly described as follows:
To create K simultaneous sub-channels (one sub-channel per active user) within a given radio frequency band, each sub-channel is assigned a unique sequence, also referred to as code or signature, of N bipolar pulses, also referred to as chips. The K sequences are generally designed so as to be maximally distinguishable from each other at all relative delays between them. During transmission within any such sub-channel, the assigned sequence is usually repeated periodically, each repetition forming one information-carrying symbol. A transmitter modulates each symbol according to the information to be transmitted. In the discussion to follow and in illustrating the invention, the modulation is assumed to be binary valued, or based on M-Phase-Shift Keying (MPSK), but other modulation schemes, such as Quadrature Amplitude Modulation (QAM), are applicable as well. In the case of simple binary modulation, each symbol carries one bit of information. As an illustrative example, if the signature of a particular sub-channel is 011101! (where 0 and 1 denote the two respective polarities) and if the information sequence to be transmitted is 101 . . . !, then the transmitted sequence will be EQU 011101,100010,011101, . . . !.
Generally, many sub-channels may be active simultaneously, so that their respective sequences are, in effect, mixed together within the same RF band. The number of sub-channels active at any one time may vary, depending on the usage and therefore it is customary to refer to users, rather than to sub-channels; thus the term users will also be used in the sequel in reference to individual signals and sequences.
In the receiver, it is the task of a detector to detect, within the received signal, the sequence belonging to one or more particular users and to extract the transmitted information therefrom. The detection is commonly done by means of correlators--one for each user. A correlator, in effect, correlates the received signal with the respective signature sequence. The results of the correlation operations are then processed so as to obtain the information (e.g. bit value) carried by each symbol of the respective users.
The situation to be discussed, and the one to which the invention is particularly applicable, is that of the so-called uplink channel in a centralized communication system, that is--the transmission of signals from individual stations, or users, to a central station, which must receive and detect the information from all the users. This situation is generally and primarily characterized by a lack of synchronization between the various sub-channel sequences; that is--the points of time at which a new symbol (i.e. signature sequence repetition cycle) starts are not coincident in all sub-channels, since these times are independently determined by the various transmitters. A typical time relationship, in the case of four users, is illustrated in FIG. 1, which depicts typical symbol streams corresponding to the four users, where each double-arrowed line represents the duration of one symbol. The situation is usually also characterized by large variations of the amplitudes among the various signals, which is primarily due to the disparate distances of the transmitters from the central station. For a recent survey paper on the problems and prior-art solutions of asynchronous signal detection, the reader is referred to S. Moshavi, "Multi-User Detection for DS-CDMA Communications," IEEE Communications Magazine, October 1996, pp. 124-136.
It has been shown in the literature (for example, in the above referenced article or in Section 3 of "Adaptive Multi-user Detection" by Sergio Verdu; Third International Symposium on Spread Spectrum Techniques and Applications, IEEE ISSSTA, New York 1994, Vol. 1 pp 43-50) that in the synchronous case, optimal detection of any or all signals is obtained by applying a decorrelation operation on the outputs of the correlators. That is, the vector of output values is multiplied by the inverse of a correlation matrix, to obtain the vector of signal values; the correlation matrix is the matrix of correlation values of all possible pairs of signature sequences. Note, however, that in the synchronous case the signature sequences can be chosen to be orthogonal to each other (e.g. the rows of a Hadamard matrix) thus resulting in a correlation matrix proportional to the unit matrix.
Various attempts have been made to apply a similar approach under the reception situation described above, that is--to the asynchronous case, by using a correlation matrix based on signature sequences in relative time relationship similar to those of the received signals. The time relations between the signals is independently obtained; according to one practice, for example, certain training signals are sent from time to time, which enable the receiver to acquire the timing of the symbols, as well as their complex amplitudes. The remaining problem is how to extract the individual symbol information, that is, the symbol values, from the resultant signal values, in the face of the asynchronous symbol timing.
One general method for extracting (or detecting) the information, according to prior art, is exemplified by the teaching of European patent 0 599 553 A2. Accordingly, decorrelation is performed on correlation signals obtained from the outputs of the correlators over a block whose duration is M symbols. The block of M symbols for all the K users is processed in a single step.
The above method has a major practical disadvantage: The size of the decorrelation matrix is very large, namely MK.times.MK, and thus is lengthy to compute (which must be done fairly frequently, because of changing user parameters and activity status); the number of computations involved in inverting the correlation matrix increases as some power of its size. Even more disadvantageously, the method continuously requires a large number of decorrelation computations for each symbol detected. Reducing M usually results in an increasing BER (bit error rate). Moreover, this method involves a great degree of overlap between successive computations--which greatly increases the overall memory requirements and computational load, and there is some information lost at the ends of each block.
There is thus a widely recognized need for, and it would be highly advantageous to have, a decorrelating detector for a multiplicity of asynchronously received CDMA signals that would yield detected information with low BER at a relatively small computational effort.